package com.rxyb.authority.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.rxyb.authority.db.po.OpsAuthorityUser;
import com.rxyb.authority.gateway.dto.user.*;
import com.rxyb.core.respone.R;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author DUYH
 * @since 2020-05-29
 */
public interface OpsAuthorityUserService extends IService<OpsAuthorityUser> {

    /**
     * 登陆
     *
     * @param loginReq
     * @author duyh
     */
    R<LoginRsp> login(LoginReq loginReq);

    /**
     * 创建
     *
     * @param createUserReq
     * @author duyh
     */
    R<CreateUserRsp> create(CreateUserReq createUserReq);

    /**
     * 详情
     *
     * @param getUserInfoReq
     * @author duyh
     */
    R<GetUserInfoRsp> query(GetUserInfoReq getUserInfoReq);

    /**
     * 修改
     *
     * @param updateUserReq
     * @author duyh
     */
    R<UpdateUserRsp> updateById(UpdateUserReq updateUserReq);

    /**
     * 删除
     *
     * @param deleteUserReq
     * @author duyh
     */
    R<DeleteUserRsp> remove(DeleteUserReq deleteUserReq);

    /**
     * 列表
     *
     * @param getUserListReq
     * @author duyh
     */
    R<GetUserListRsp> list(GetUserListReq getUserListReq);

    /**
     * 密码修改
     *
     * @param updatePwdReq
     * @return
     */
    R<UpdatePwdRsp> updatePwd(UpdatePwdReq updatePwdReq);

}
